// src/apis/home-pv.ts
import qs from "qs";
import axiosInstance from "../utils/axiosInstances";

/**
 * 电站信息
 * @returns 结果
 */
export function getStationInfo() {
    return axiosInstance.get("/datav/pv/chart/getStationInfo", {
        paramsSerializer: (obj) => {
            return qs.stringify(obj);
        },
    });
}

/**
 * 发电实时
 * @param params 查询参数
 * @returns 结果
 */
export function getRuntimeInfo(params: any) {
    return axiosInstance.get("/datav/common/chart/getChart?configId=280&cardKey=1719630965883", {
        params,
        paramsSerializer: (obj) => {
            return qs.stringify(obj);
        },
    });
}

/**
 * 累计发电量
 */
export function getTotalPower(params: any) {
    return axiosInstance.get("/datav/common/chart/getChart?configId=280&cardKey=1719653563371", {
        params,
        paramsSerializer: (obj) => {
            return qs.stringify(obj);
        },
    });
}

/**
 * 当日发电量
 */
export function getTodayPower(params: any) {
    return axiosInstance.get("/datav/common/chart/getChart?configId=280&cardKey=1719630973705", {
        params,
        paramsSerializer: (obj) => {
            return qs.stringify(obj);
        },
    });
}

/**
 * 当月发电量
 */
export function getMonthPower(params: any) {
    return axiosInstance.get("/datav/common/chart/getChart?configId=280&cardKey=1719630968859", {
        params,
        paramsSerializer: (obj) => {
            return qs.stringify(obj);
        },
    });
}

/**
 * 当年发电量
 */
export function getYearPower(params: any) {
    return axiosInstance.get("/datav/common/chart/getChart?configId=280&cardKey=1719653563371", {
        params,
        paramsSerializer: (obj) => {
            return qs.stringify(obj);
        },
    });
}

/**
 * 获取图表详情
 */
interface ChartInfo {
    configId: number, // 配置ID
    cardKey: number | string, // 卡片key
    deviceSn?: string, // 设备编号
    dayTime?: string, // 天日期
    monthTime?: string, // 月日期
    yearTime?: string // 年日期
}

export function getChartInfo(params: ChartInfo) {
    return axiosInstance.get('/datav/common/chart/getChart', {
        params,
        paramsSerializer: (params) => {
            return qs.stringify(params);
        }
    });
}